TUNER FM1216ME

Vágner Vlastimil – Fiala Jaromír

    Kamarád současně spoluautor mi v minulosti zaslal tuner který se používal na TV kartách do PC které měli označení TV2000 XP EXPERT. Po výrobě přípravků  využívajících  integrované obvody PCF8574 a PCf8591 řízených po I2C, jsme se rozhodli využít pro další odzkoušení převodníku co používáme pro tuto komunikaci I2C tento tuner. Programy a ani použitý převodník si v žádném případě neklade za cíl konkurovat profesionálním programům  a přípravkům mohou posloužit pro vlastní inspiraci při testech podobných zařízení. Přípravek se připojuje na sériový port počítače nebo pomocí redukce USB/COM redukce musí podporovat všechny I/O sériového portu.

 

Popis převodníku I2C

    Použitý převodník je na obrázku č.01 je napájen napětím 5V DC, Zenerovy diody upravují napěťovou úroveň z výstupů DTR a RTS na hodnotu 5V1 předřadné rezistory omezují proud do Zenerových diod a do vstupů použitých integrovaných obvodů na linkách SDA a SCL. Vstup CTS snímá napětí na emitoru T1 které mění zasílaná data vysílaná na lince SDA. Program je napsaný pro toto zapojení převodníku a je možné ho použít i pro převodníky COM/I2C tvořené pouze z rezistorů a zenerových diod, nebo pro převodníky z oblíbeného obvodu MAX232 kde se doplní tranzistory patřičné vodivosti na straně linek SDA a SCL. A na straně vstupu CTS také tranzistor patřičné vodivosti, jeho výrobu zvládne každý bastlíř elektronik.

 

                      

 

Stručný popis tuneru FM1216ME

    Tuner je napájen napětím 5V DC který napájí i převodník I2C napětí je možné získat ze stabilizátoru 7805 který je napájen napětím z transformátoru a toto je usměrněno diodovým můstkem, nebo může být napájen přímo z baterie tato musí dodat napětí na vstupu stabilizátoru nejméně o 2V vyšší než je stabilizované napětí 5V DC. Zdroj je čistě individuální věc jak bude proveden, nesmíme však zapomenout osadit blokovací kondenzátory 100nF co nejblíže stabilizátoru 7805. Tuner je napájen na uvedených vývodech označených pro napájení +5V dle obrázku č.02 dále je na záporný pól zdroje připojen i vývod tuneru označený AS tento vývod umožňuje připojení až čtyř těchto tuneru na jednu linku SDA a SCL. To jak je zapojený vývod AS zadáváme do programu v parametrech MA1 a M01 pokud je tento vývod AS uzemněn (jako v našem případě) je adresa tuneru 192 desítkově. Dále je na vstupy SDA a SCL připojen uvedený převodník COM/I2C a na vývody označené AF-L a AF-R je připojen Jack 3.5 pro připojení reproduktorů k poslechu stanice při naladění tuneru v pásmu který je zvolen, video signál není v našem případě vyveden. Jediná úprava tuneru je v našem případě provedena ta že oba vstupy (střední vývody konektorů) FM a TV jsou uvnitř tuneru propojeny keramickým kondenzátorem o hodnotě 40pF. Osazení kondenzátoru musí být provedeno opatrně bez jakékoliv destrukce cívek v tuneru. Víčko tuneru je v místě kondenzátoru z vnitřní strany polepeno průsvitnou lepící páskou aby nemohlo dojít k vodivému spojení těla kondenzátoru nebo vývodů s víkem tuneru. Obsáhlý popis tuneru je v datašetu který je dostupný na internetu.

 

  

 

Programování tuneru

    Programování tuneru dle popisu a zadávání hodnot je přesně v pořadí tak jak jsou uvedena v tabulkách použitého datašetu, hodnoty které volí stanice v navoleném vlnovém pásmu jsou předem vypočítány dle vzorečků výpočet můžeme volit ze dvou variant. Vypočítaná hodnota frekvence stanice je dvoubytová a zadává se do dvou bytu označených PROGRAM DIVIDER BYTE 1 A PROGRAM DIVIDER BYTE 2, (při výpočtu je v našem případě používána kalkulačka v OS Windows která umožňuje převod desítkové hodnoty do binární). Důvod takto prováděných výpočtů je že námi používané programy jsou napsány pouze pro odzkoušení tuneru a pro tuto potřebu vyhovují. Do prvního byte PROGRAM DIVIDER BYTE 1 se zadává zbytek z vypočítaného čísla frekvence uvedené stanice a do druhého byte PROGARM DIVDER BYTE 2 se zadává vyšší hodnota z vypočítané frekvence uvedené stanice. Příklad chceme poslouchat stanici na 106.5Mhz před výpočtem si musíme jako první zvolit dle datašetu tzv. RATIO SELECT BIT zvolíme 31.25Khz poté pokračujeme např. dle vzorce výpočtu v datašetu jelikož jde o rozsah 88 – 108Mhz připočítává se k frekvenci 106.5 ještě 10.7Mhz. Tak že pak je výpočet proveden takto 106.5 + 10.7 = 117.2  * 1000 = 117200 / 31.25 = 3750.4. Nyní převedeme hodnotu 3750 do binární hodnoty 111010100110 tuto hodnotu si rozdělíme na nižší a vyšší hodnotu tzv. 8bitů zprava do leva  111010100110 hodnotu 1110 si převedeme do desítkové hodnoty 14 a tuto hodnotu zadáme do PROGRAM DIVIDER BYTE 1. Stejně postupujeme i v případě hodnoty zadávané za PROGARM DIVDER BYTE 2 hodnotu 10100110 převedeme do desítkové soustavy 166 a zadáme do PROGARM DIVDER BYTE 2. Druhý možný výpočet je tento : dle vzorce v datašetu 1Mhz / hodnotou 31.25Khz  1 / 31.25 = 0032 a výpočet násobíme 1000. „ 0.032 * 1000 = 32 „ přijímaná stanice bude opět 106.5Mhz  106.5 + 10.7 = 117.2 tento výsledek násobíme hodnotou 32  tj. 117.2 * 32= 3750.4. dále by byl postup výpočtu a za zadávání hodnot za  PROGRAM DIVIDER BYTE 1 a  PROGARM DIVDER BYTE 2 stejný. Uvedený postup výpočtů je uvedený v datašetu k tuneru. Pro celkové naprogramování tuneru se začíná v tabulce CONTROL FORMAT začínáme zadáním adresy  kde bit „0“ je bit pro zápis nebo čtení R/W bit „1“ je označený M01 bit „2“ je označený MA1 zde zadáváme hodnoty dle hodnoty (napětí) na vývodu AS v našem případě je AS spojený s GND tak že za MA1 a M01 zadáváme „0“. Bity 3,4,5 mají hodnotu „0“ bit „6“ , „7“ mají hodnotu „1“ tak že jejich hodnoty je bit „6“= 64, bit „7“= 128, po jejich součtu je hodnota 64 + 128 = 192. tuto hodnotu zadáváme za ADDRESS BYTE dle tabulky v datašetu. Jako další zadáváme hodnoty za PROGRAM DIVIDER BYTE 1 a za PROGARM DIVDER BYTE 2 tak jak je popsáno výše a v datašetu. Dále zadáváme hodnotu za CONTROL BYTE zde jsou bit „0“ označený OS zde zadáváme hodnotu dle datašetu poté je bit „1“ označený RSB zde zadáváme hodnotu „1“ následuje bit „2“ označený RSA zde zadáváme hodnotu „0“. Tato kombinace je dána volbou hodnoty 31.25Khz při výpočtu hodnot za PROGRAM DIVIDER BYTE 1 a za PROGARM DIVDER BYTE 2. Zbývající hodnoty bitů „3“ (T0), „4“ (T1), „5“ (T2), „6“ (CP) zadáváme dle datašetu bit „7“ je trvale 1. Další hodnota která se zadává je dle tabulky BAND SWITCH BYTE zde volíme dle datašetu, zda budeme přijímat v pásmu LOW BAND 48.25 – 160.00 Mhz, MILD BAND 160.00 – 442.00Mhz, HIGH BAND 442.00 – 863.25Mhz, FM BAND 88.00 – 108.00Mhz a zda budeme přijímat v FM stereo nebo mono. Dále zapisujeme do poslední položky prvního IO v tuneru a to je za AUXILIARY BYTE zde zadáváme hodnoty dle datašetu za hodnoty ATC, AL2, AL1, AL0.

    Nyní zadáváme hodnoty do druhého IO v tuneru jako první zadáváme hodnotu za adresu v tabulce a datašetu je označená STANDART SLAVE ADDRESS zde zadáváme hodnotu 134 tato je dána součtem bitů „7“ , „2“ , „1“  128+4+2 = 134. poté se zadává hodnota za SUB ADDRESS (SAD) zde se zadávají hodnoty dle tabulky v datašetu a poslední se zadává hodnota za DATA tato se také zadává z tabulky v datašetu. Data se dají číst z prvního IO v tuneru na adrese 193. z druhého IO se dají číst data na adrese 135.

 

 

 

 

Popis programů

    Programy jsou napsány v Turbo Pascalu jdou spustit na počítačích s OS DOS, Windows 95/98 a Windows 2000, XP, NT, Windows 7 startér. Od OS Windows 2000 jdou spustit pouze z příkazové řádky pokud jsou uvedené OS nainstalovány ve 32-bitové verzi. V případě že Os Windows je nainstalovaný v 64-bitové verzi programy nefungují. Programy jsou celkem tři s názvy DBYTE.EXE, TESTTUNE.EXE, TUNER.EXE.

    Program DBYTE.EXE program umožňuje načítat hodnoty z druhého IO v uvedeném tuneru na adrese 135. Po spuštění programu volíme port kde je připojený převodník volbu portu volíme stiskem klávesy s číslicí 1 až 4. Stiskem klávesy s číslicí 1 volíme sériový port COM1, stiskem klávesy s číslicí 2 volíme sériový port COM2, atd. Po volbě portu se již zobrazují načtená data program ukončíme stiskem klávesy ESC. V případě že uvedený IO nekomunikuje je na monitoru počítače zobrazena informace IO NEKOMUNIKUJE POKRAČUJ STISKEM LIBOVOLNÉ KLÁVESY, po stisku libovolné klávesy se program ukončí.

    Program TESTTUNE.EXE program umožňuje načítat hodnoty z prvního IO v uvedeném tuneru na adrese 13. Po spuštění programu volíme port kde je připojený převodník volbu portu volíme stiskem klávesy s číslicí 1 až 4. Stiskem klávesy s číslicí 1 volíme sériový port COM1, stiskem klávesy s číslicí 2 volíme sériový port COM2, atd. Po volbě portu se již zobrazují načtená data program ukončíme stiskem klávesy ESC. V případě že uvedený IO nekomunikuje je na monitoru počítače zobrazena informace IO NEKOMUNIKUJE POKRAČUJ STISKEM LIBOVOLNÉ KLÁVESY, po stisku libovolné klávesy se program ukončí.

    Program TUNER.EXE program umožňuje ovládat tuner a ladit v pásmech stanice tyto si však musíme předem vypočítat program je čistě určen pouze pro odzkoušení komunikace a ladění. I v tomto jednoduchém provedení umožňuje zadávat hodnoty a ladit stanice a v pásmech poslouchat naladěnou stanici včetně nahrávání např.pomocí mikrofonu. Po naladění stanice je možné přípravek pro komunikaci s tunerem odpojit od počítače a tuner zůstává stále naladěn, pokud po naladění stanice program TUNER.EXE  dáme v OS Windows na lištu můžeme klidně spustit nahrávání písničky např.pomocí mikrofonu  atd. stejně jako v případě kdy je po naladění tuner odpojen od počítače. Pokud máme naladěnu požadovanou stanici je možné program TUNER.EXE ukončit klávesou ESC a spustit si program DBYTE.EXE nebo TESTTUNE.EXE a sledovat načítaná data, pokud nyní chceme znovu zadat novou stanici a máme spuštěný některý z programů DBYTE nebo TESTTUNE ukončíme je stiskem klávesy ESC a spustíme si znovu program TUNER.EXE  a opět si zadáme jinou stanici.

    Po spuštění programu volíme port kde je připojený převodník volbu portu volíme stiskem klávesy s číslicí 1 až 4. Stiskem klávesy s číslicí 1 volíme sériový port COM1, stiskem klávesy s číslicí 2 volíme sériový port COM2, atd. Po volbě portu kde je připojený přípravek se na monitoru počítače zobrazí volba ZÁPIS nebo ČTENÍ TUNERU, KONEC ESC volbu zápisu volíme stiskem klávesy „Z“ volbu čtení volíme stiskem klávesy „C“. NYNÍ JSOU POPSÁNY PŘESNĚ POLOŽKY TAK JAK JDOU POSTUPNĚ ZA SEBOU V DATAŠETU A TAK JAK MAJÍ BÝT I PO SOBĚ POSTUPNĚ ODESLÁNY DO TUNERU DLE DATAŠETU Po volbě ZÁPISU  se na monitoru počítače zobrazí JAKO PRVNÍ nápis ADDRESS BYTE zde zadáváme hodnotu za adresu, po jejím zadání stiskneme klávesu ENTER. Zobrazí se další položka  PROGRAM DIVIDER BYTE 1 zadáme hodnotu jak je popsáno výše a stiskneme klávesu ENTER zobrazí se další položka  PROGARM DIVDER BYTE 2 zadáme hodnotu jak je psáno výše a stiskneme klávesu ENTER. Zobrazí se další položka CONTROL BYTE po zadání parametru opět stiskneme klávesu ENTER, zobrazí se další položka BAND SWITCH BYTE zadáme hodnotu a stiskneme klávesu ENTER, zobrazí se poslední položka zadávaná do IO č.1 v tuneru AUXILIARY BYTE zadáme hodnotu stiskneme klávesu ENTER. Nyní se zobrazí položka pro druhý IO v tuneru STANDART SLAVE ADDRESS zadáme hodnotu a stiskneme klávesu ENTER, zobrazí se položka SUB ADDRESS (SAD) zadáme hodnotu a stiskneme klávesu ENTER nyní se zobrazí poslední položka DATA zadáme hodnotu a stiskneme klávesu ENTER po tomto posledním zadání hodnoty jsou najednou všechny zadané hodnoty odeslány do tuneru na patřičné integrované obvody podle adres. Nyní se na monitoru zobrazuje načtená hodnota prvního IO v tuneru a tuner podle zadání přijímá navolenou stanici. Nyní když chceme zadat nové parametry po přepočtech stiskneme klávesu MEZERNÍK a zadáváme nové hodnoty. Pokud se mění pouze hodnoty za PROGRAM DIVIDER BYTE 1, PROGARM DIVDER BYTE 2  stačí si poznamenat hodnoty zbývajících stávajících položek na papír a pouze se opisují. Program ukončíme stiskem klávesy ESC.

    Ukázka zadávání hodnot pro příjem stanic POZOR JDE O VYSÍLACÍ KMITOČTY STANIC V ÚSTECKÉM KRAJI TAK JAK JSOU NALADĚNY NA PŘIJÍMAČI : VLTAVA, ČESKÝ ROZHLAS, F1 RADIO, FM MOST, RADIOŽURNÁL, BLANÍK. Hodnoty jsou zadávány přesně v pořadí jak bylo popsáno výše.

ADDRESS BYTE, PROGRAM DIVIDER BYTE 1, PROGRAM DIVIDER BYTE 2, CONTROL BYTE, BAND SWITCH BYTE, AUXILIARY BYTE, STANDART SLAVE  ADDRESS, SUB ADDRESS (SAD), DATA.

ČESKÝ ROZHLAS (88.80Mhz) : 192, 12, 112, 130, 25, 160, 134, 0, 8

F1 RADIO (93.50Mhz) :  192, 13, 6, 130, 25, 160, 134, 0, 8

FM MOST (96.80Mhz) :  192, 13,112, 130, 25, 160, 134, 0, 8

VLTAVA  (98.00Mhz)  : 192, 13, 95, 130, 25, 160, 134, 0, 8

RADIOŽURNÁL (98.95Mhz)  : 192, 13, 180, 130, 25, 160, 134, 0, 8

BLANÍK (106.50Mhz)  : 192, 14, 166, 130, 25, 160, 134, 0, 8

 

Na ukázku je v adresáři PROGRAMY adresář ZÁZNAM kde jsou ukázky nahrávek z uvedených stanic, pro ty kdož si chtějí zjistit co kde je zadáno stačí si hodnoty opsat na papír převést do binární hodnoty a porovnat poté v datašetu u položky co tato hodnota představuje. Například hodnota 160 je hodnota zadaná za AUXILIARY BYTE, stejně tak hodnota 130 což je hodnota zadaná za CONTROL BYTE. 

    Bližší informace

    vagnervlastimil@seznam.cz

 

Naletování kondenzátoru na středy vstupů konektorů FM a TV

 

Použitý tuner z počítačové TV karty

 

spuštěný program tuner.exe při oživování a testování programu

 

Druhá část zadávání parametrů v programu tuner.exe

 

Spuštěný program na nahrávání záznamu z tuneru

 

spuštěný program nahrávání a celá sestava tuner za PC, mikrofon, převodník I2C

 

 

Tuner umístěný za PC

 

Napájecí zkušební zdroj a redukce USB/COM s I2C převodníkem

Vágner Vlastimil

vagnervlastimil@seznam.cz